package com.yidu.action;


import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yidu.common.Pages;
import com.yidu.common.Tools;
import com.yidu.domain.ListenBackstageUser;
import com.yidu.domain.ListenFinanceDetail;
import com.yidu.service.ListenFinanceDetailService;

import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;

/**
 * @title 财务明细Controller类 
 * @author dyl
 * @dateTime 2019年1月14日
 */
@Controller
@RequestMapping("/listenFinanceDetail")
public class ListenFinanceDetailController {
	//调用财务明细
	@Resource
	ListenFinanceDetailService service;
	/**
	 * 查询
	 * @param detail
	 * @param session
	 * @param startTime
	 * @param endTime
	 * @return
	 * @author dyl 
	 */
	@RequestMapping("/selectAll")
	@ResponseBody
	public Map<String, Object> selectAll(ListenFinanceDetail detail,HttpSession session,String startTime,String endTime){
		//定义一个方法调用
		Map<String, Object> map = new HashMap<>();
		//取对象类
		ListenFinanceDetail us=new ListenFinanceDetail();
		//判断可选择时间开始
 		if(!Tools.isEmpty(startTime)) {
			map.put("startTime", startTime+" 00:00:00");
		}
 		//判断可选择时间结束
 		if(!Tools.isEmpty(endTime)) {
			map.put("endTime", endTime+" 23:59:59");
		}
 		//取session获得财务表里的公司id
		ListenBackstageUser users = (ListenBackstageUser) session.getAttribute("user");
		//判断为不空
		if(users!=null) {
			if(!Tools.isEmpty(users.getSite())) {
				//取到公司id
				map.put("companyId", users.getSite());
			}
		}
		System.out.println("======================================");
		//取到对象id
		if(!Tools.isEmpty(detail.getFdId())) {
			//取到财务id
			map.put("fdid",detail.getFdId());
			System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++==");
			Set<String> key = map.keySet();
			for (Iterator<String> it = key.iterator(); it.hasNext();) {
			String s = it.next();
			System.out.println(s+":"+map.get(s));//这里的s就是map中的key，map.get(s)就是key对应的value。
			}
			
		}
		//分页的方法
		if(detail.getPage()!=null && detail.getLimit()!=null) {
			//取分页工具类
			Pages page=new Pages();
			//查询分页
			page.setCurPage(detail.getPage());
			page.setMaxResult(detail.getLimit());
			//调用行数页数
			map.put("firstRows", page.getFirstRows());
			map.put("maxResult", page.getMaxResult());
		}
		//取一个对象
		List<ListenFinanceDetail> list = service.selectAll(map);
		//取到服务
		int rows = service.selectAllCount(map);
		//调用分页方法
		Map<String, Object> layuiMap=new HashMap<>();
		//查询总行数
		layuiMap.put("code", 0);
		layuiMap.put("msg", "");
		layuiMap.put("count",rows);
		layuiMap.put("data", list);	
		//返回
		return layuiMap;
	}
	
}

